package com.ysd.lis.entity.inv;

import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.ysd.lis.entity.BaseEntity;
import lombok.Data;
import lombok.EqualsAndHashCode;

import java.math.BigDecimal;
import java.sql.Timestamp;

/**
 * <p>
 * 订单明细表
 * </p>
 *
 * @author WH
 * @since 2024-09-19
 */
@Data
@EqualsAndHashCode(callSuper = true)
@TableName("INV_ORDER_REAGENT")
public class InvOrderReagent extends BaseEntity {

    private static final long serialVersionUID = 1L;

    /**
     * 订单信息id
     */
    @TableField("ORDER_INFO_ID")
    private String orderInfoId;

    /**
     * 库存id(调拨入库)
     */
    @TableField("STOCK_ID")
    private String stockId;

    /**
     * 商品编号
     */
    @TableField("REA_NO")
    private String reaNo;

    /**
     * 商品名称
     */
    @TableField("REA_NA")
    private String reaNa;

    /**
     * 规格型号
     */
    @TableField("SPEC_MODEL")
    private String specModel;
    /**
     * 批号
     */
    @TableField("BATCH_NUM")
    private String batchNum;

    /**
     * 数量
     */
    @TableField("AMOUNT")
    private BigDecimal amount;

    /**
     * 单价
     */
    @TableField("COST_PRICE")
    private BigDecimal costPrice;

    /**
     * 费用合计
     */
    @TableField("COSTS")
    private BigDecimal costs;

    /**
     * 序号
     */
    @TableField("SEQ")
    private BigDecimal seq;

    /**
     * 申请数量
     */
    @TableField("APPLY_NUM")
    private BigDecimal applyNum;

    /**
     * 收货数量
     */
    @TableField("RECEIVE_NUM")
    private BigDecimal receiveNum;

    @JsonFormat(pattern = "yyyy-MM-dd", timezone="GMT+8")
    @TableField(fill = FieldFill.UPDATE)
    private Timestamp produceDate;
    @TableField(fill = FieldFill.UPDATE)
    @JsonFormat(pattern = "yyyy-MM-dd", timezone="GMT+8")
    private Timestamp expiryDate;

    /**
     * 来源仓库名称
     */
    @TableField("ORI_STORE_NA")
    private String oriStoreNa;

    /**
     * 来源仓库编号
     */
    @TableField("ORI_STORE_CODE")
    private String oriStoreCode;

    /**
     * 单位
     */
    @TableField("UNIT")
    private String unit;

    /**
     * 最小单位
     */
    @TableField(exist = false)
    private String miniUnit;
    /**
     * 最低温度
     */
    @TableField(exist = false)
    private String minTemp;
    /**
     * 最高温度
     */
    @TableField(exist = false)
    private String maxTemp;
    /**
     * 储存条件
     */
    @TableField(exist = false)
    private String stockCondition;
    /**
     * 条码号
     */
    @TableField(exist = false)
    private String barcode;
    /**
     * 销售/出库单位
     */
    @TableField(exist = false)
    private String outUnit;
    @TableField(exist = false)
    private String proUnit;

    /**
     * 库存单位
     */
    @TableField(exist = false)
    private String stockUnit;
    /**
     * 启用批号管理
     */
    @TableField(exist = false)
    private String isBatchNumMgt;
    /**
     * 启用单品条码
     */
    @TableField(exist = false)
    private Boolean isSingleBarcode;
    @TableField(exist = false)
    private Integer proUnitRatio;
    @TableField(exist = false)
    private Integer stockUnitRatio;
    /**
     * 有效期(天)
     */
    @TableField(exist = false)
    private String expirDay;
    /**
     * 外部代码编号
     */
    @TableField(exist = false)
    private String externalNo;
    @TableField(exist = false)
    private String manufacturerNo;
    @TableField(exist = false)
    private String tarStoreCode;
    @TableField(exist = false)
    private String transferNo;
    @TableField(exist = false)
    private String transferType;
    @TableField(exist = false)
    private Timestamp documentDate;
    @TableField(exist = false)
    private String manuName;



}
